1. Field of the Invention
The present invention relates to an integrated circuit data processing apparatus and, more particularly, to a data processing apparatus having an embedded electrically rewritable nonvolatile semiconductor memory.
The present invention further relates to methods of operating an integrated circuit data processing apparatus having an embedded electrically rewritable nonvolatile semiconductor memory.
2. Description of the Related Art
The use of VLSI chip circuitry in digital data processing systems, or computers, has realized the benefits of smaller size, lighter weight, lower cost, reduced power requirements, and higher reliability. VLSI circuitry such as single-chip computers (i.e., microcontrollers or microcontrollers) allow computer electronics to be used in almost all of today's homes and commercial/industrial applications.
A control or application software program for operating a microcontroller is stored typically in a read-only memory (ROM), such as a mask ROM, an erasable and programmable ROM (EPROM), an electrically erasable and programmable ROM (EEPROM), or a flash EEPROM. It is generally known that once stored, the contents of a built-in mask ROM cannot be altered. Thus, a program stored in mask ROM cannot be reprogrammed. In contrast, a microcontroller with an embedded EPROM, an EEPROM, or a flash EEPROM can be wholly rewritten or partially updated when control program thereof needs to be changed.
Presently, microcontrollers incorporating flash memories have been widely used in a variety of applications, such as portable phones, caller ID boxes, CD-ROM drivers, DVD players, smart cards, and set-top boxes. Such microcontrollers with a built-in flash memory can be programmed while they are mounted on a printed circuit board of a system, i.e., in an “on-board” state.
A typical microcontroller may include a central processing unit (CPU), an embedded flash EEPROM for storing a control program for CPU, a ROM for storing a writing program for writing the control program into the flash memory, a random access memory (RAM) for storing temporary data, sand a mode control unit for setting various modes of operations of the microcontroller.
For example, a prior art flash memory incorporated microcontroller is described in U.S. Pat. No. 5,872,994 to Akiyama et al. In an on-board writing operation mode of the prior art microcontroller, a control program source is connected via an adapter to a serial communication interface or to an input/output port. When a mode control unit recognizes an on-board writing operation mode by the data signal at a data bus supplied from the input/output port or the like, the mode control unit connects the serial communication interface, flash memory, RAM and CPU to buses. In this mode, the CPU reads the control program via the serial communication interface from the control program source in accordance with the writing program stored in the ROM, and temporarily stores the control program into the RAM.
However, the ROM of the prior art microcontroller is active only for an on-board writing mode; that is, the ROM is inactive for the other operation modes. Accordingly, incorporating such a ROM into a microcontroller chip limits the chip size reduction advantage of the microcontroller. The prior art also offers an alternative on-board writing method by using a RAM to store a writing program instead of using a ROM. This method reduces the size of the microcontroller since the ROM is no longer needed for storing a writing program, but a RAM is still needed as an essential element.
In addition, the prior art microcontroller includes a data reception time detector that detects the read speed of a program supplied from a program source by monitoring the system clock speed during an on-board writing operation. When the read speed is high, the CPU temporarily stores the program in the RAM or a buffer of the CPU before writing the program into the flash memory. On the other hand, when the read speed is low, the CPU directly writes the program into the flash memory. Further, the prior art microcontroller can vary a writing operation time period or a flash erasing operation time period. These features, however, tend to add to the cost and circuit complexity of the microcontroller.
Other examples of flash memory incorporated microcontrollers are described in U.S. Pat. Nos. 5,398,208 to Sakamoto and 5,493,534 to Mok. Each of these patents is incorporated by reference herein as providing a description of the prior art.